package uid.elements;

import uid.jsf.Componente;

/**
 * @author Patricia Vilain
 */
public abstract class DataItem extends UIDElement {

	public static final int SINGLE = 1;
	public static final int SET = 2;
	private String name;
	private String domain;
	private int type = SINGLE;
	private int cardinalityMin;
	private int cardinalityMax;

	/**
	 * O item de dado e' criado, por default, como um item de dado simples
	 * (single).
	 */
	public DataItem(String name) {
		this.name = name;
		this.type = SINGLE;
	}

	/**
	 * O item de dado e' criado, por default, como um item de dado simples
	 * (single).
	 */
	public DataItem(String name, String domain) {
		this.name = name;
		this.domain = domain;
		this.type = SINGLE;
	}

	public String getDomain() {
		return domain;
	}

	public String getName() {
		return name;
	}

	public int getCardinalityMax() {
		return cardinalityMax;
	}

	public void setCardinalityMax(int cardinalityMax) {
		this.cardinalityMax = cardinalityMax;
	}

	public int getCardinalityMin() {
		return cardinalityMin;
	}

	public void setCardinalityMin(int cardinalityMin) {
		this.cardinalityMin = cardinalityMin;
	}

	public int getType() {
		return this.type;
	}

	public void definesAsSet() {
		this.type = SET;
	}
}
